iT邦幫忙

2025 iThome 鐵人賽

DAY 1
0
Rust

用 Tauri 打造你的應用程式系列 第 1

[Day 01] 緣起

  • 分享至 

  • xImage
  •  

在開始系列文章之前,先簡單聊聊為何想寫 Tauri 這個主題~

跨平台開發

要說明動機,就不得不先介紹一下我待的這間 AI 新創公司的背景。

由於公司還在發展階段,很多方向都還在嘗試中,這導致產品之間的變動性比較大,也因此,同一套功能(或產品)可能會需要視情況做成網頁、桌面應用程式,或甚至是手機 APP。

雖然多方嘗試可以提高談成合作的機會,但同時,問題也很明顯:公司必須花很多時間在不同平台開發相同功能,甚至這個功能最後也不一定會被採用。因此,如果能用相同的程式碼,部屬在不同的平台,那就會是一個值得考慮的選擇。

經過一段時間的探索與嘗試,最後我們選擇的作法是:先使用 Vue 開發網頁 (前端),如果有需要,就再用 Electron 打包成桌面應用程式。而手機 APP 的部分則使用 Flutter,這樣 Android 和 IOS 就不用寫兩套程式碼了。

而我在公司就是負責使用 Vue + Electron 開發前端,Python 開發後端。至於手機 APP,就交給其他同事處理 XD

Tauri 的出現

在某次讀書會中,為了向別人介紹 Electron,想說好像也應該要提一下有哪些類似的套件,於是在查資料的過程中,知道了 Tauri 這個套件 (那時候 Tauri 還只是 1.0)。

除了 Electron、Tauri 之外,還有很多,有興趣了解的人可以看這個比較表

Tauri 2.0

後來,在 2023 ViteConf 中,我在眾多議程中發現 Tauri 的身影,並得知它之後可以支援手機 APP,甚至是 Android、IOS 都可以。

Yes

我心想:哇!這樣不就可以用一個工具走遍天下面對所有需求了嗎?!

之後,我就一直很期待它發布 2.0 版,去年下半年三不五時就上去看一下 Github,看看到底什麼時候會 release XD

想說之後有空的話一定要找機會試試看,然後... 就沒有然後了

只能說,下次一定。

機會

好不容易前陣子有接到一個新的專案需要開發手機 APP,因此我就決定趁這個機會來試試看 Tauri 了 (畢竟都 release 2.0 好幾個月了,bug 應該少很多了),也因此,趁這個機會把這段時間所學,整理成一個比較好入門的教學系列文章。

Roadmap

以下是這系列文章的 Roadmap:

首先,基礎篇會先從介紹一些基礎概念,並教大家怎麼建置開發環境 (步驟有點多),讓大家可以盡快看到開發畫面。接下來,再回頭說明 Tauri 比較核心的架構與原理。之後就是比較好玩 (?) 的開發篇,會教大家進行各種設定,並介紹幾個我覺得很值得介紹的 plugin。最後,再教大家如何把開發好的應用程式打包和上架到商店。

至於 roadmap 中紅色的部分... 之後再看有沒有機會回頭再補充 (我沒有 Mac QQ)

這系列文章會盡量著重在 Tauri 本身,你「應該」會學到:

  1. 如何建立開發與打包成桌面應用程式與手機 APP
  2. 如何使用各種常見的 plugin
  3. Tauri 的架構與前後端溝通方式

「應該」不會學到:

  1. 如何用 Vue 開發前端
  2. 如何寫好 Rust (我也不是很熟QQ)

希望各位讀完之後會有收穫~


下一篇
[Day 02] Tauri 簡介
系列文
用 Tauri 打造你的應用程式5
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言